Skip to content

Add onboarding Copilot agent for new contributors#2523

Open
KarishmaGhiya wants to merge 13 commits into
microsoft:mainfrom
KarishmaGhiya:kaghiya/add-onboarding-agent-v2
Open

Add onboarding Copilot agent for new contributors#2523
KarishmaGhiya wants to merge 13 commits into
microsoft:mainfrom
KarishmaGhiya:kaghiya/add-onboarding-agent-v2

Conversation

@KarishmaGhiya

Copy link
Copy Markdown
Member

Summary

Adds a custom GitHub Copilot agent at .github/copilot/agents/onboarding.md that serves as an interactive onboarding assistant for new contributors.

What it does

Contributors can invoke @onboarding in Copilot Chat to get guided help with:

  • Project overview — what Azure MCP is and how it's structured
  • Prerequisites — tooling checklist (VS Code, .NET, Node.js, PowerShell, etc.)
  • Quick start — clone, build, and test commands
  • Development workflow — fork → branch → code → test → PR
  • Finding work — labels like help wanted and good first issue
  • Adding new commands — step-by-step with real file references
  • Coding standards — Do/Don't lists sourced from CONTRIBUTING.md and AGENTS.md
  • Testing — unit tests, live tests, e2e test prompts
  • PR quality checklist — formatting, spelling, CI checks, changelog
  • Common pitfalls — the 8 most frequent mistakes new contributors make

Content source

All content is sourced from CONTRIBUTING.md and the project's AGENTS.md conventions.

Invoking Livetests

Copilot submitted PRs are not trustworthy by default. Users with write access to the repo need to validate the contents of this PR before leaving a comment with the text /azp run mcp - pullrequest - live. This will trigger the necessary livetest workflows to complete required validation.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a GitHub Copilot custom agent (@onboarding) to help new contributors get oriented with Azure MCP, including setup, workflow, command authoring, testing, and PR checklist guidance.

Changes:

  • Introduces a new onboarding agent markdown file under .github/copilot/agents/.
  • Documents repo structure, prerequisites, quick-start commands, and contribution workflow.
  • Provides step-by-step guidance for adding new commands, testing (unit/live/e2e), and PR quality checks.

Comment thread .github/copilot/agents/onboarding.md Outdated
Comment thread .github/copilot/agents/onboarding.md Outdated
Comment thread .github/copilot/agents/onboarding.md Outdated

@jongio jongio left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The agent concept is valuable. Having a guided onboarding path for new contributors makes sense, and the content is well-organized.

Main concern: roughly 160 lines here duplicate content from AGENTS.md and CONTRIBUTING.md (coding standards, repo structure, prerequisites, workflow). When those source files change, this file won't track, and the agent will give stale guidance to new contributors.

Consider keeping the agent's personality and high-level orientation inline, but referencing the canonical docs for details. Something like See AGENTS.md for current coding standards rather than reproducing them. The content stays fresh without manual sync.

Also noting: the three existing bot review comments appear to be false positives. All three suggest changes that already match what's in the PR (the paths and commands are correct as written).

Comment thread .github/copilot/agents/onboarding.md Outdated
Comment thread .github/copilot/agents/onboarding.md Outdated
Comment thread .github/copilot/agents/onboarding.md Outdated

@jongio jongio left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New commit adds a second agent file at .github/agents/onboarding.agent.md (68 lines) alongside the existing .github/copilot/agents/onboarding.md (296 lines). This is the condensed GitHub Agents format version.

Two concerns with this addition:

  1. You now have two agent definitions covering the same onboarding content at different paths. When one is updated, the other goes stale. Consider either making the short one the canonical source and having the longer one reference it, or removing the longer one if the new format replaces it.

  2. The Standard Commands section in the new file uses -UsePaths which isn't a valid parameter on Build-Local.ps1 (it only has -NoUsePaths). The original file's Quick Start correctly uses just -VerifyNpx.

Comment thread .github/agents/onboarding.agent.md Outdated
Comment thread .github/agents/onboarding.agent.md
@JasonYeMSFT

JasonYeMSFT commented Jun 22, 2026

Copy link
Copy Markdown
Member

I didn't realize this PR has been created before reviewing #2918. Could you please consolidate changes in the onboarding agent.md?

Comment thread .github/agents/onboarding.agent.md
Comment thread .github/agents/onboarding.agent.md

@JasonYeMSFT JasonYeMSFT left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I noticed that onboarding.agent.md and Onboarding.md have similar content. Can we simplify the agent.md to function like an index that points contributors to the right places for information and dedupe the content?

Comment thread .github/agents/onboarding.agent.md
Comment thread docs/Onboarding.md Outdated
Comment thread docs/Onboarding.md Outdated
KarishmaGhiya and others added 3 commits June 29, 2026 13:48
Create a custom GitHub Copilot agent at .github/copilot/agents/onboarding.md
that guides new contributors through environment setup, codebase understanding,
and their first contribution. Content sourced from CONTRIBUTING.md.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
KarishmaGhiya and others added 7 commits June 29, 2026 13:48
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ew skill

- Remove .github/copilot/agents/onboarding.md (not discoverable by GitHub)
- Update .github/agents/onboarding.agent.md with consolidated content
- Replace new-command.md references with /skills add-azure-mcp-tools
- Reference AGENTS.md for coding standards instead of duplicating
- Fix Build-Local.ps1 invalid -UsePaths flag
- Fix consolidated-tools.json path
- Update to two-generic pattern ([Option] attributes, SubscriptionCommandUnitTestsBase)
- Remove internal-only links (aka.ms/azmcp/intake, private project board)
- Add eng/scripts/Update-Solutions.ps1 -All guidance
- Use New-TestResources.ps1 for live test deployment

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Update onboarding.agent.md with external MCP server integration, NuGet feed, server modes, and namespace creation guidance
- Add docs/Onboarding.md as human-readable onboarding guide with correct patterns
- Add onboarding callout tip to CONTRIBUTING.md
- Fix typos in CONTRIBUTING.md (Substitue -> Substitute, whem -> when)
- Add cspell words: configfile, remotemcp, slnx, uniqueprefix

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Remove duplicate detailed content (prerequisites, full workflows, server modes)
that belongs in docs/Onboarding.md (PR microsoft#2918). Keep only:
- Agent behavioral instructions (approach, tone, delegation)
- Key reference file table for the agent to read
- Essential facts and pitfalls to convey
- Quick commands lookup

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace docs/Onboarding.md link with concrete steps on how to
invoke the @onboarding agent in Copilot Chat.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@g2vinay g2vinay modified the milestones: 2026-05, 2026-07 Jun 30, 2026
Replace old one-generic RegisterOptions/BindOptions/OptionDefinitions guidance
with the new two-generic pattern using [Option] attributes on flat POCOs,
per docs/option-conversion.md.

Key changes:
- Do/Don't sections updated for [Option] attributes and ISubscriptionOption
- Option Handling Pattern section rewritten with two-generic example
- Replace new-command.md references with skill and option-conversion.md refs
- Replace Deploy-TestResources.ps1 with New-TestResources.ps1
- Remove -UsePaths from Build-Local.ps1 commands
- Update test base class guidance (SubscriptionCommandUnitTestsBase)
- Fix logging example to not log full options object
- Update Required Files to remove OptionDefinitions.cs

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@KarishmaGhiya KarishmaGhiya force-pushed the kaghiya/add-onboarding-agent-v2 branch from 4e3206b to 8ef6992 Compare June 30, 2026 17:55
KarishmaGhiya and others added 2 commits June 30, 2026 11:17
Since docs/Onboarding.md is being removed, the agent file needs to
contain all the important onboarding info directly: prerequisites,
project structure, workflows, testing, external server integration,
coding standards, quality checklist, and common pitfalls.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@KarishmaGhiya

Copy link
Copy Markdown
Member Author

@JasonYeMSFT we are planning to remove this file from this PR and #2918 as well

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

5 participants